<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body></body>
  <script>
    //   实现一个构造函有数 Animal 其中name，age，color 属性，有 shout 和 jump 方法，实现 dog 和 cat 构造函数并 **继承**  Animal 的属性和方法

    // + dog 构造函数添加 吃骨头 方法
    // + cat 构造函数添加 吃鱼 方法

    // 使用 dog 构造函数创建 **金毛** 对象并调用吃骨头方法，使用 cat 构造函数创建 **梨花** 对象并调用吃鱼方法

    function Animal(name, age, color) {
      this.name = name
      this.age = age
      this.color = color
      this.shout = function () {}
      this.jump = function () {}
    }

    function Dog(name, age, color) {
      Animal.call(this, name, age, color)
    }
    function Cat(name, age, color) {
      Animal.call(this, name, age, color)
    }

    Dog.prototype.eat = function () {
      console.log('吃骨头了')
    }
    Cat.prototype.eatFish = function () {
      console.log('吃鱼了')
    }

    const dog = new Dog('金毛', 2, '棕色')
    console.log(dog)
    dog.eat()
    const cat = new Cat('梨花', 2, '白色')
    console.log(cat)
    cat.eatFish()
  </script>
</html>
